(** Bombs-Must-Detonate: FSM Syntax Extension Signature 
    @author Brian Go*)

(** Performs source-to-source compilation on the finite state machine code.
    The result of any state machine declaration is a function which returns
    the described state machine as a finiteStateMachine (see lib_fsm.bmd). *)
val compile_fsm : Ast.src_program -> Ast.src_program

(** A node in the state graph used for connectivity checking *)
type state_node = int * int list * bool ref (** id, target id list, visited flag *)

exception Fsm_error of string

